/**
 * <b>项目名：</b>oasis-service<br/>
 * <b>包名：</b>com.bookdao.oasis.common.tools.json.jackson<br/>
 * <b>文件名：</b>DateSerializer.java<br/>
 * <b>描述：</b><br/>
 * <b>版本信息：</b>v1.0.0<br/>
 * <b>日期：</b>2015年11月23日-下午12:31:49<br/>
 * <b>Copyright (c)</b> 2015智道@版权所有<br/>
 */

package com.bookdao.oasis.common.tools.json.jackson;

import java.io.IOException;
import java.util.Date;

import com.bookdao.oasis.utils.DateUtil;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;

/**
 * <b>类名称：</b>DateSerializer <br/>
 * <b>类描述：</b><br/>
 * <b>创建人：</b>zhanghj<br/>
 * <b>修改人：</b><br/>
 * <b>修改时间：</b>2015年11月23日 下午12:31:49<br/>
 * <b>修改备注：</b><br/>
 * <b>版本信息：</b>v1.0.0<br/>
 */

public class DateSerializer extends JsonSerializer<Date> {
	 @Override  
     public void serialize(Date value,   
             JsonGenerator jsonGenerator,   
             SerializerProvider provider)  
             throws IOException, JsonProcessingException {
     	if(null != value){
     		if("00:00:00".equals(DateUtil.getFormatString(DateUtil.H_M_S, value))){
     			jsonGenerator.writeString(DateUtil.getFormatString(DateUtil.Y_H_M, value));
     		}else{
     			jsonGenerator.writeString(DateUtil.getFormatString(DateUtil.Y_H_M_H_M_S, value));
     		}
     	}else{
     		jsonGenerator.writeString(value.toString());
     	}
     }  
}
